// #include <iostream>

// using namespace std;

// using ll = long long;

// int main()
// {
//     ll a, b; cin >> a >> b;
//     int c = a > b ? a : b;
//     for (int i = 1; i <= (a > b ? b : a); i++){
//         if ((c * i) % a  == 0 && (c * i) % b == 0){
//             cout << c * i << endl;
//             return 0;
//         }
//     }
//     return 0;
// }
/*
    * 辗转相除法
*/
#include <iostream>

using namespace std;
using ll = long long;
ll gcd (ll a, ll b){
    if (b == 0) return a;
    return gcd(b, a % b);
}
int main()
{   
    ll a, b; cin >> a >> b;
    // 最小公倍数 = n1 * n2 / gcd(n1, n2)
    cout << a * b / gcd(a, b) << endl;
    return 0;
}